package com.jkt.rms.business.base;

import java.io.Serializable;
import java.sql.Timestamp;


/**
 * This is an object that contains data related to the ResourceAuditTrans table.
 * Do not modify this class because it will be overwritten if the configuration file
 * related to this class is modified.
 * @hibernate.class
 *  table="ResourceAuditTrans"
 */
public abstract class BaseResourceAuditTrans  implements Serializable {

	public static String PROPPROJECTNUMBER = "projectNumber";
	public static String PROPPERSONALDETAIL = "personalDetail";
	public static String PROPROLECODE = "roleCode";
	public static String PROPSECONDARYSKILL = "secondarySkill";
	public static String PROPTOTALEXPERIENCE = "totalExperience";
	public static String PROPRELIVANTEXPERIENCE = "relivantExperience";
	public static String PROPAUDITDATE = "auditDate";
	public static String PROPPRIMARYSKILL = "primarySkill";
	public static String PROPRESOURCECODE = "ResourceCode";
	public static String PROPVENDORCODE = "vendorCode";
	public static String PROPLOCATIONCODE = "locationCode";
	public static String PROPID = "id";
	public static String PROPRATE = "rate";


	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private int id;

	// fields
	private String resourceCode;
	private String vendorCode;
	private String personalDetail;
	private String primarySkill;
	private String secondarySkill;
	private String totalExperience;
	private String relivantExperience;
	private String roleCode;
	private String locationCode;
	private String projectNumber;
	private float rate;
	private Timestamp auditDate;


	// constructors
	public BaseResourceAuditTrans () {
		initialize();
	}

	/**
	 * Constructor for primary key
	 */
	public BaseResourceAuditTrans (int id) {
		this.setId(id);
		initialize();
	}

	/**
	 * Constructor for required fields
	 */
	public BaseResourceAuditTrans (
		int id,
		Timestamp auditDate) {

		this.setId(id);
		this.setAuditDate(auditDate);
		initialize();
	}

	protected void initialize () {}


	public int getId () {
		return id;
	}

	
	public void setId (int id) {
		this.id = id;
		this.hashCode = Integer.MIN_VALUE;
	}


	
	public String getResourceCode () {
		return resourceCode;
	}

	public void setResourceCode (String resourceCode) {
		this.resourceCode = resourceCode;
	}


	public String getVendorCode () {
		return vendorCode;
	}

	
	public void setVendorCode (String vendorCode) {
		this.vendorCode = vendorCode;
	}


	public String getPersonalDetail () {
		return personalDetail;
	}


	public void setPersonalDetail (String personalDetail) {
		this.personalDetail = personalDetail;
	}


	public String getPrimarySkill () {
		return primarySkill;
	}


	public void setPrimarySkill (String primarySkill) {
		this.primarySkill = primarySkill;
	}



	public String getSecondarySkill () {
		return secondarySkill;
	}


	public void setSecondarySkill (String secondarySkill) {
		this.secondarySkill = secondarySkill;
	}


	public String getTotalExperience () {
		return totalExperience;
	}


	public void setTotalExperience (String totalExperience) {
		this.totalExperience = totalExperience;
	}


	public String getRelivantExperience () {
		return relivantExperience;
	}

	public void setRelivantExperience (String relivantExperience) {
		this.relivantExperience = relivantExperience;
	}


	public String getRoleCode () {
		return roleCode;
	}


	public void setRoleCode (String roleCode) {
		this.roleCode = roleCode;
	}


	public String getLocationCode () {
		return locationCode;
	}


	public void setLocationCode (String locationCode) {
		this.locationCode = locationCode;
	}



	public String getProjectNumber () {
		return projectNumber;
	}


	public void setProjectNumber (String projectNumber) {
		this.projectNumber = projectNumber;
	}


	public float getRate () {
		return rate;
	}


	public void setRate (float rate) {
		this.rate = rate;
	}


	public Timestamp getAuditDate () {
		return auditDate;
	}


	public void setAuditDate (Timestamp auditDate) {
		this.auditDate = auditDate;
	}


	public boolean equals (Object obj) {
		if (null == obj) return false;
		if (!(obj instanceof com.jkt.rms.business.base.BaseResourceAuditTrans)) return false;
		else {
			com.jkt.rms.business.base.BaseResourceAuditTrans mObj = (com.jkt.rms.business.base.BaseResourceAuditTrans) obj;
			return (this.getId() == mObj.getId());
		}
	}


	public int hashCode () {
		if (Integer.MIN_VALUE == this.hashCode) {
			return (int) this.getId();
		}
		return this.hashCode;
	}


	public String toString () {
		return super.toString();
	}

}